package com.jdzy.model.common.vos;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class Result implements Serializable {
    private Integer code;//响应码，1 代表成功; 0 代表失败
    private String msg;  //响应信息 描述字符串
    private Object data; //返回的数据


    public static Result success(){
        return new Result(1,"success",null);
    }
    //查询 成功响应
    public static Result success(Object data,String msg){
        return new Result(1,msg,data);
    }

    public static Result success(Object data){
        return new Result(1,"success",data);
    }


    //失败响应
    public static Result error(String msg){
        return new Result(0,msg,null);
    }

    public static class Data {
        private BigDecimal allScore;
        private BigDecimal examScore;
        private Integer rankDiff;

        public BigDecimal getAllScore() {
            return allScore;
        }

        public void setAllScore(BigDecimal allScore) {
            this.allScore = allScore;
        }

        public BigDecimal getExamScore() {
            return examScore;
        }

        public void setExamScore(BigDecimal examScore) {
            this.examScore = examScore;
        }
        public Integer getRankDiff() {
            return rankDiff;
        }
        public void setRankDiff(Integer rankDiff) {
            this.rankDiff = rankDiff;
        }
    }
    @JsonProperty("data")
    public static Result pk(BigDecimal allScore,Integer rankDiff,BigDecimal examScore) {
        Result result = new Result();
        result.setCode(2); // 假设1表示成功
        Data data = new Data();
        data.setAllScore(allScore);
        data.setExamScore(examScore);
        data.setRankDiff(rankDiff);
        result.setData(data);
        return result;
    }



}

